//--------=======================================================================================================
var timeId=0;
/**
 * 视图渲染
 * @Param where 渲染位置
 * @Param templateName 模板名
 * @Param data 渲染数据
 * */
function viewToTemplate(where,templateName,data) {
    var html = $('script[type="text/'+templateName+'"]').html();//模板代码
    var arr=[];
    $("#"+where).html("");//清空tbody
    $.each(data, function (index, object) {
        arr.push(formatTemplate(object, html));
    });
    $("#"+where).append(arr.join(""));
}
function formatTemplate(object, tmpl,fun) {
    //m1 匹配到的字符{W} m2 字符的内容 W
    if(tmpl == undefined){
        console.log(tmpl)
        return ;
    }
    return tmpl.replace(/{(\w+)}/g,function (m1, m2) {
        if(!m2){
            return "";
        }
        if(m2 == ""){
            return "";
        }
        if (typeof fun == 'function' ){
            fun();
        }
        return object[m2];
    })
}
/**
 * 分页
 */
function makePage(result){
    $("#page_Info").empty();
    var center=$("<center></center>").append("当前第"+result.pageNum+"页,总共"+result.pages+
        " 页,总"+result.total+" 条数记录");
    $("#page_Info").append(center);

}
function build_page_nav(result,condition){
    $("#page_nav").empty();
    var ul=$("<ul></ul>").addClass("pagination");
    var firstPage=$("<li></li>").append($("<a></a>").append("首页").attr("href","#"));
    var prePage=$("<li></li>").append($("<a></a>").append("&laquo;").attr("href","#"));
    if(result.hasPreviousPage==false){
        firstPage.addClass("disabled");
        prePage.addClass("disabled");
    }else{
        //为元素添加点击事件
        firstPage.click(function(){
            to_Page(1,condition);
        });
        prePage.click(function(){
            to_Page(result.pageNum-1,condition);
        });
    }


    var nextPage=$("<li></li>").append($("<a></a>").append("&raquo;").attr("href","#"));
    var lastPage=$("<li></li>").append($("<a></a>").append("末页").attr("href","#"));
    if(result.hasNextPage==false){
        nextPage.addClass("disabled");
        lastPage.addClass("disabled");
    }else{
        lastPage.click(function(){
            to_Page(result.pages,condition);
        });
        nextPage.click(function(){
            to_Page(result.pageNum+1,condition);
        });
    }


    ul.append(firstPage).append(prePage);
    $.each(result.navigatepageNums,function(index,item){
        var num=$("<li></li>").append($("<a></a>").append(item).attr("href","#"));
        if(result.pageNum==item){
            num.addClass("active");
        }
        num.click(function(){
            to_Page(item,condition);
        });
        ul.append(num);
    });
    ul.append(nextPage).append(lastPage);
    var nav=$("<nav></nav>").addClass("Page navigation").append(ul);
    nav.appendTo("#page_nav");
}
function to_Page(pn, condition){
    var data;
    condition.pn = pn;
    $.ajax({
        url:"/product/getProducts",
        data:condition,
        type:"post",
        success:function(res){
            var res = getOrder(condition,1);
            renderOrderView(res);
        }
    })
}
/**
 * 获取时间
 * @param cellval
 * @returns {string}
 * @constructor
 */
function ChangeDateFormat(cellval) {
    var date = new Date(parseInt(cellval, 10));
    var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
    var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
    return date.getFullYear() + "-" + month + "-" + currentDate;
}
//seckillTime 数据转化
function seckillTimeParse(data) {
    for(var i = 0; i<data.length; i++){
        data[i].startTime = ChangeDateFormat
    }
}
function productDataParse(data) {
    for (var i=0;i<data.length;i++){
        data[i].seckillPrice = parseInt(data[i].seckillPrice)/100;
        data[i].productPrice = parseInt(data[i].product.price)/100;
        data[i].productImage = data[i].product.image;
        data[i].productTitle = data[i].product.title;
        if(data[i].timeId == timeId){
            data[i].fun = '<input type="button" class="layui-btn layui-btn-danger" onclick="seckillOrder(\''+data[i].id+'\')" value="立即抢">';
        }else{
            data[i].fun = '<input type="button" class="layui-btn layui-btn-primary disabled" disabled onclick="confirmOrder(\''+data[i].id+'\')" value="即将开始">';
        }
    }
    return data;
}
//=========================================================渲染===========================
//页面渲染
function viewToPage(id, templateName, data,condicton){
    var res = data;
    console.log(res)

    viewToTemplate(id,templateName,res)
    makePage(res,condicton);
    build_page_nav(res,condicton);
}
//时间列表渲染
function  makeTimeList(data){
    $("#seckill_list_view").empty();
    $.each(data.extend.seckillTimes,function (index, item) {
        var li=$("<li></li>");
        var startTime=new Date(item.startTime);
        li.attr("timeId",item.id);
        li.click(function () {
            requestSeckillProduct($(this).attr("timeId"));
        });
        //判断此时是否是秒杀时间段
        if(new Date(item.startTime).toLocaleTimeString()<=new Date().toLocaleTimeString()
            &&new Date(item.endTime).toLocaleTimeString()>=new Date().toLocaleTimeString()){
            timeId=item.id;
            requestSeckillProduct(item.id)
            li.append("<img src='img/fire.png' style='width: 30px;height: 30px; position: relative;left: 0px;top:28px' /><a href='#'>"+startTime.getHours()+":"+startTime.getMinutes()+""+startTime.getSeconds()+"秒杀进行中</a>").appendTo("#seckill_list_view   ");
        }else{

            li.append("<a href='#'>"+startTime.getHours()+":"+startTime.getMinutes()+""+startTime.getSeconds()+"秒杀即将开始</a>").appendTo("#seckill_list_view");
        }
    })
}

//================================================================功能===================================================
//商品渲染
function  makeSeckillProduct(data){
   console.log(data)
    data = productDataParse(data);
    viewToTemplate("productList","list_view_template",data);
    // $.each(data,function (index, item) {
    //     var li=$("<li></li>");
    //     li.append($("<img>").attr("src","https://images.weserv.nl/?url="+item.product.image))
    //     li.append("<br/>"+item.product.title+"<br/><br/>");
    //     li.append("秒杀价"+item.seckillPrice+"&nbsp;&nbsp;&nbsp;原价"+item.product.price+"<br>");
    //     var btn=$("<button></button>").attr("seckillId",item.id);
    //     btn.click(function () {
    //         window.location.assign("/seckillConfirm?seckId="+$(this).attr("seckillId"));
    //     })
    //     if(item.timeId==timeId){
    //         btn.append("立即抢购").appendTo(li);
    //     }else{
    //         btn.append("即将开始").attr("disabled",true).appendTo(li);
    //     }
    //
    //     li.appendTo("#productList");
    // })
}
//查询秒杀未结束的所有时间
function queryAllTime(){
    $.get({
        url:"/seckillTime/queryAllTime",
        data:new Date(),
        success:function (data) {
            console.log(data);
            makeTimeList(data)
        }
    })
}
//请求对应时间段的秒杀商品
function requestSeckillProduct(timeId){
    $.ajax({
        url:"/seckill/querySeckillProduct",
        data:{"timeId":timeId},
        type:"GET",
        success:function (data) {
            console.log(data);
            makeSeckillProduct(data.extend.seckills);
        }
    })
}
function seckillOrder(id){
    window.location.assign("/seckillConfirm?seckId="+id);
}
$(document).ready(function () {

    queryAllTime();








})